package com.wing.product.model.request;


import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

@Data
@NoArgsConstructor
@Accessors(chain = true)
public class WarehouseProductForm {

    private Long id;
    @TableField(value = "product_id")
    @Schema(description="原产品id 取pro_product 表")
    private Long productId;

    @TableField(value = "product_type_id")
    @Schema(description="产品类型 取 pro_product_type表")
    private Long productTypeId;

    @TableField(value = "product_category_id")
    @Schema(description="所属分类 取 pro_product_category表")
    private Long productCategoryId;

    @TableField(value = "product_variety_id")
    @Schema(description="品种")
    private Long productVarietyId;

    @TableField(value = "product_material_id")
    @Schema(description="材质")
    private Long productMaterialId;

    @TableField(value = "product_brand_id")
    @Schema(description="产品品牌 取 pro_product_brand表")
    private Long productBrandId;

    @TableField(value = "product_name")
    @Schema(description="产品名称")
    private String productName;

    @TableField(value = "product_code")
    @Schema(description="产品编码（sku）")
    private String productCode;

    @TableField(value = "product_main_unit_id")
    @Schema(description="主单位")
    private Long productMainUnitId;

    @TableField(value = "product_sub_unit_id")
    @Schema(description="辅单位")
    private Long productSubUnitId;

    @TableField(value = "product_image_url")
    @Schema(description="产品图片地址")
    private String productImageUrl;

    @TableField(value = "product_spec_code")
    @Schema(description="规格码")
    private String productSpecCode;

    @TableField(value = "thing_code_status")
    @Schema(description="是否一物一码")
    private String thingCodeStatus;

    @TableField(value = "customer_id")
    @Schema(description="供应商id")
    private Long customerId;

    @TableField(value = "width")
    private Double width;

//    @TableField(value = "length")
//    private Double length;

    @TableField(value = "length")
    private String length;

    private String ProductLength;

    @TableField(value = "diameter")
    private Double diameter;

    @TableField(value = "net_weight")
    private Double netWeight;

    @TableField(value = "gross_weight")
    private Double grossWeight;

    @Schema(description = "牌号")
    @TableField(value = "product_mark_id")
    private String productMarkId;

    @Schema(description = "生产商")
    @TableField(value = "product_producer_id")
    private String productProducerId;

    private Long customerNameId;

    public interface Update{}

    public interface Add{}
}
